Bun Macros
JavaScriptのMacro
Bun Bundler
に入っている(?)
JavaScript Macros in Bun | Bun Blog
bundle時に実行されて、その結果がコード内にインラインで埋め込まれる
Import Attributes
を使って
{ type: 'macro' }
でimportすればmacro扱いになる
code:ts
import { random } from './random.ts' with { type: 'macro' };
console.log(
Your random number is ${random()}
);
λ bun build
でbundleすると、この関数を実行した結果がファイルに埋め込まれる
だから「
rondom()
を実行している」部分はbundle後に存在しない
build時にfetchして、その内容を埋め込むなど
SSG
的なことができる